package com.strategy.annotation;
import java.lang.annotation.*;

/**
 * 策略注解，标记策略类并提供元信息
 */
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface Strategy {
    /**
     * 策略唯一标识
     */
    String key();

    /**
     * 策略版本号，遵循语义化版本
     */
    String version() default "1.0.0";

    /**
     * 策略描述
     */
    String description() default "";

    /**
     * 是否设为默认版本
     */
    boolean isDefault() default false;

    /**
     * 是否启用
     */
    boolean enabled() default true;
}
